<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>dom4j - 1.6.1</title>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../style.css" TITLE="Style">
</head>
<body>
<TABLE cellspacing="0" cellpadding="2"><TBODY>
    <!-- C:\ Projects\ dom4j_1.x_branch\ dom4j\ src\ java\ org\ dom4j\ datatype\ SchemaParser.java -->
  <TR>
    <TD colspan="6" class="reportHeader">
    <TABLE width="100%"><TR>
    <TD valign="top" class="titleText">Clover coverage report -   dom4j - 1.6.1 <DIV class="timestamp"><b>Coverage timestamp:</b>&nbsp;ma mei 16 2005 14:23:01 GMT+01:00</DIV>
            <DIV class="navBar"><a href="../../../pkgs-summary.html"><b>Overview</b></a>&nbsp;&nbsp;&nbsp;<a href="pkg-summary.html"><b>Package</b></a>&nbsp;&nbsp;&nbsp;<font class="navBarCurrent">File</font></DIV>
    
<DIV class="navBarLink">
&nbsp;&nbsp;&nbsp;
    <A HREF="../../../index.html" TARGET="_top">FRAMES</A>&nbsp;&nbsp;
<A HREF="SchemaParser.html" TARGET="_top">NO FRAMES</A>&nbsp;&nbsp;
    </DIV>

</TD>
         <td class="headerStats" valign="top" width="40%" align="right">
        <table align="right">
         <tr>
           <td nowrap><b>file stats:</b></td>
           <td align="right"><b>LOC:</b></td>
           <td align="right">607</td>
           <td width="10%">&nbsp;</td>
           <td align="right"><b>Methods:</b></td>
           <td align="right">18</td>
         </tr>
         <tr>
           <td></td>
           <td align="right"><b>NCLOC:</b></td>
           <td align="right">324</td>
           <td width="10%">&nbsp;</td>
           <td align="right"><b>Classes:</b></td>
           <td align="right">1</td>
         </tr>
      </table>
     </td>
    </TR></TABLE>
   </TD>
  </TR>

<TR><TD class="hbreak" colspan="6">&nbsp;</TD></TR>
  <TR>
    <TD class="graphHeaderLeft"><b>&nbsp;Source file</b></TD>
    <TD class="graphHeader">Conditionals</TD>
    <TD class="graphHeader">Statements</TD>
    <TD class="graphHeader">Methods</TD>
    <TD class="graphHeader" align="left" colspan="2"><B>TOTAL</B></TD>
  </TR>   
  <TR>
    <TD class="graphItem">
        	   SchemaParser.java
	    </TD>
   
    <TD class="graphPercent" align="center">67,6%</TD>
    <TD class="graphPercent" align="center">71,6%</TD>
    <TD class="graphPercent" align="center">83,3%</TD>
    <TD class="graphBarLeft" align="center"><B>71,3%</B></TD>
    <TD class="graphBar">
            <TABLE class="barGraph" cellspacing="0">
        <TBODY>
          <TR>
	               <TD class="covered"><img alt="coverage" src="../../../img/trans.gif"
                   width="142" height="12"></TD>
            <TD class="uncovered"><img alt="coverage" src="../../../img/trans.gif"
                   width="58" height="12"></TD>
	   	  </TR>
	</TBODY>
      </TABLE>
          </TD>
  </TR> 
</TBODY></TABLE><TABLE cellspacing="0" cellpadding="0" class="srcView"><TBODY>
<TR><TD align="right" class="lineCount">
&nbsp;1</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">/*</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;2</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * Copyright 2001-2005 (C) MetaStuff, Ltd. All Rights Reserved.</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;3</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> *</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;4</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * This software is open source.</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;5</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * See the bottom of this file for the licence.</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;6</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> */</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;7</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;8</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">package</span> org.dom4j.datatype;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;9</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;10</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> com.sun.msv.datatype.xsd.DatatypeFactory;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;11</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> com.sun.msv.datatype.xsd.TypeIncubator;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;12</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> com.sun.msv.datatype.xsd.XSDatatype;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;13</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;14</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> java.util.HashMap;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;15</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> java.util.Iterator;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;16</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> java.util.Map;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;17</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;18</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> org.dom4j.Attribute;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;19</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> org.dom4j.Document;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;20</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> org.dom4j.DocumentFactory;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;21</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> org.dom4j.Element;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;22</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> org.dom4j.Namespace;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;23</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> org.dom4j.QName;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;24</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> org.dom4j.io.SAXReader;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;25</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> org.dom4j.util.AttributeHelper;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;26</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;27</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> org.relaxng.datatype.DatatypeException;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;28</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> org.relaxng.datatype.ValidationContext;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;29</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;30</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> org.xml.sax.EntityResolver;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;31</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">import</span> org.xml.sax.InputSource;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;32</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;33</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">/**</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;34</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * &lt;p&gt;</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;35</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * &lt;code&gt;SchemaParser&lt;/code&gt; reads an XML Schema Document.</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;36</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * &lt;/p&gt;</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;37</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;38</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * <span class="javadoc">@author</span> &lt;a href="mailto:jstrachan@apache.org"&gt;James Strachan &lt;/a&gt;</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;39</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * <span class="javadoc">@author</span> Yuxin Ruan</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;40</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * <span class="javadoc">@version</span> $Revision: 1.19 $</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;41</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> */</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
<A name="SchemaParser">&nbsp;42</A></TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="keyword">public</span> <span class="keyword">class</span> SchemaParser {</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;43</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> <span class="keyword">static</span> final Namespace XSD_NAMESPACE = Namespace.get(<span class="string">"xsd"</span>,</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;44</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            <span class="string">"http://www.w3.org/2001/XMLSchema"</span>);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;45</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;46</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">// Use QNames for the elements</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;47</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> <span class="keyword">static</span> final QName XSD_ELEMENT = QName</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;48</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            .get(<span class="string">"element"</span>, XSD_NAMESPACE);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;49</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;50</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> <span class="keyword">static</span> final QName XSD_ATTRIBUTE = QName.get(<span class="string">"attribute"</span>,</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;51</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            XSD_NAMESPACE);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;52</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;53</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> <span class="keyword">static</span> final QName XSD_SIMPLETYPE = QName.get(<span class="string">"simpleType"</span>,</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;54</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            XSD_NAMESPACE);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;55</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;56</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> <span class="keyword">static</span> final QName XSD_COMPLEXTYPE = QName.get(<span class="string">"complexType"</span>,</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;57</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            XSD_NAMESPACE);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;58</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;59</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> <span class="keyword">static</span> final QName XSD_RESTRICTION = QName.get(<span class="string">"restriction"</span>,</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;60</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            XSD_NAMESPACE);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;61</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;62</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> <span class="keyword">static</span> final QName XSD_SEQUENCE = QName.get(<span class="string">"sequence"</span>,</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;63</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            XSD_NAMESPACE);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;64</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;65</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> <span class="keyword">static</span> final QName XSD_CHOICE = QName.get(<span class="string">"choice"</span>, XSD_NAMESPACE);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;66</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;67</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> <span class="keyword">static</span> final QName XSD_ALL = QName.get(<span class="string">"all"</span>, XSD_NAMESPACE);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;68</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;69</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> <span class="keyword">static</span> final QName XSD_INCLUDE = QName</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;70</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            .get(<span class="string">"include"</span>, XSD_NAMESPACE);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;71</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;72</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/** Document factory used to register Element specific factories */</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;73</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> DatatypeDocumentFactory documentFactory;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;74</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;75</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/**</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;76</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * Cache of &lt;code&gt;XSDatatype&lt;/code&gt; instances loaded or created during</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;77</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * this build</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;78</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     */</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;79</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> Map dataTypeCache = <span class="keyword">new</span> HashMap();</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;80</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;81</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/** NamedTypeResolver */</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;82</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> NamedTypeResolver namedTypeResolver;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;83</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;84</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/** target namespace */</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;85</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="keyword">private</span> Namespace targetNamespace;</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;86</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;87</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 87: method not entered.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 87: method not entered.">    <span class="keyword">public</span> SchemaParser() {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;88</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 88: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 88: statement not executed.">        <span class="keyword">this</span>(DatatypeDocumentFactory.singleton);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;89</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;90</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;91</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 91: method entered 27 times.">&nbsp;27</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 91: method entered 27 times.">    <span class="keyword">public</span> SchemaParser(DatatypeDocumentFactory documentFactory) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;92</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 92: statement executed 27 times.">&nbsp;27</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 92: statement executed 27 times.">        <span class="keyword">this</span>.documentFactory = documentFactory;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;93</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 93: statement executed 27 times.">&nbsp;27</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 93: statement executed 27 times.">        <span class="keyword">this</span>.namedTypeResolver = <span class="keyword">new</span> NamedTypeResolver(documentFactory);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;94</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;95</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;96</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/**</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;97</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * Parses the given schema document</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;98</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;99</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> schemaDocument</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;100</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            is the document of the XML Schema</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;101</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     */</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;102</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 102: method entered 22 times.">&nbsp;22</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 102: method entered 22 times.">    <span class="keyword">public</span> <span class="keyword">void</span> build(Document schemaDocument) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;103</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 103: statement executed 22 times.">&nbsp;22</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 103: statement executed 22 times.">        <span class="keyword">this</span>.targetNamespace = <span class="keyword">null</span>;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;104</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 104: statement executed 22 times.">&nbsp;22</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 104: statement executed 22 times.">        internalBuild(schemaDocument);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;105</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;106</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;107</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 107: method entered 3 times.">&nbsp;3</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 107: method entered 3 times.">    <span class="keyword">public</span> <span class="keyword">void</span> build(Document schemaDocument, Namespace namespace) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;108</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 108: statement executed 3 times.">&nbsp;3</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 108: statement executed 3 times.">        <span class="keyword">this</span>.targetNamespace = namespace;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;109</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 109: statement executed 3 times.">&nbsp;3</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 109: statement executed 3 times.">        internalBuild(schemaDocument);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;110</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;111</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;112</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 112: method entered 25 times.">&nbsp;25</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 112: method entered 25 times.">    <span class="keyword">private</span> <span class="keyword">synchronized</span> <span class="keyword">void</span> internalBuild(Document schemaDocument) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;113</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 113: statement executed 25 times.">&nbsp;25</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 113: statement executed 25 times.">        Element root = schemaDocument.getRootElement();</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;114</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;115</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 115: expression evaluated to true 25 times, false 0 times.">&nbsp;25</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 115: expression evaluated to true 25 times, false 0 times.">        <span class="keyword">if</span> (root != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;116</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            <span class="comment">// handle schema includes</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;117</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 117: statement executed 25 times.">&nbsp;25</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 117: statement executed 25 times.">            Iterator includeIter = root.elementIterator(XSD_INCLUDE);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;118</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;119</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 119: expression evaluated to true 0 times, false 25 times.">&nbsp;25</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 119: expression evaluated to true 0 times, false 25 times.">            <span class="keyword">while</span> (includeIter.hasNext()) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;120</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 120: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 120: statement not executed.">                Element includeElement = (Element) includeIter.next();</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;121</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 121: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 121: statement not executed.">                String inclSchemaInstanceURI = includeElement</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;122</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                        .attributeValue(<span class="string">"schemaLocation"</span>);</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;123</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 123: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 123: statement not executed.">                EntityResolver resolver = schemaDocument.getEntityResolver();</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;124</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;125</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 125: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 125: statement not executed.">                <span class="keyword">try</span> {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;126</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 126: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 126: statement not executed.">                    <span class="keyword">if</span> (resolver == <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;127</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 127: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 127: statement not executed.">                        String msg = <span class="string">"No EntityResolver available"</span>;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;128</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 128: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 128: statement not executed.">                        <span class="keyword">throw</span> <span class="keyword">new</span> InvalidSchemaException(msg);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;129</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;130</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;131</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 131: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 131: statement not executed.">                    InputSource inputSource = resolver.resolveEntity(<span class="keyword">null</span>,</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;132</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                            inclSchemaInstanceURI);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;133</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;134</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 134: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 134: statement not executed.">                    <span class="keyword">if</span> (inputSource == <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;135</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 135: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 135: statement not executed.">                        String msg = <span class="string">"Could not resolve the schema URI: "</span></A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;136</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                                + inclSchemaInstanceURI;</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;137</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 137: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 137: statement not executed.">                        <span class="keyword">throw</span> <span class="keyword">new</span> InvalidSchemaException(msg);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;138</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;139</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;140</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 140: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 140: statement not executed.">                    SAXReader reader = <span class="keyword">new</span> SAXReader();</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;141</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 141: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 141: statement not executed.">                    Document inclSchemaDocument = reader.read(inputSource);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;142</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 142: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 142: statement not executed.">                    build(inclSchemaDocument);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;143</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                } <span class="keyword">catch</span> (Exception e) {</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;144</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 144: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 144: statement not executed.">                    System.out.println(<span class="string">"Failed to load schema: "</span></A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;145</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                            + inclSchemaInstanceURI);</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;146</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 146: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 146: statement not executed.">                    System.out.println(<span class="string">"Caught: "</span> + e);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;147</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 147: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 147: statement not executed.">                    e.printStackTrace();</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;148</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 148: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 148: statement not executed.">                    <span class="keyword">throw</span> <span class="keyword">new</span> InvalidSchemaException(<span class="string">"Failed to load schema: "</span></A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;149</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                            + inclSchemaInstanceURI);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;150</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;151</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;152</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;153</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            <span class="comment">// handle elements</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;154</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 154: statement executed 25 times.">&nbsp;25</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 154: statement executed 25 times.">            Iterator iter = root.elementIterator(XSD_ELEMENT);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;155</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;156</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 156: statement executed 25 times.">&nbsp;25</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 156: statement executed 25 times.">            <span class="keyword">while</span> (iter.hasNext()) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;157</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 157: statement executed 180 times.">&nbsp;180</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 157: statement executed 180 times.">                onDatatypeElement((Element) iter.next(), documentFactory);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;158</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;159</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;160</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            <span class="comment">// handle named simple types</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;161</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 161: statement executed 25 times.">&nbsp;25</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 161: statement executed 25 times.">            iter = root.elementIterator(XSD_SIMPLETYPE);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;162</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;163</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 163: statement executed 25 times.">&nbsp;25</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 163: statement executed 25 times.">            <span class="keyword">while</span> (iter.hasNext()) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;164</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 164: statement executed 1 time.">&nbsp;1</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 164: statement executed 1 time.">                onNamedSchemaSimpleType((Element) iter.next());</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;165</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;166</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;167</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            <span class="comment">// hanlde named complex types</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;168</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 168: statement executed 25 times.">&nbsp;25</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 168: statement executed 25 times.">            iter = root.elementIterator(XSD_COMPLEXTYPE);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;169</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;170</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 170: statement executed 25 times.">&nbsp;25</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 170: statement executed 25 times.">            <span class="keyword">while</span> (iter.hasNext()) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;171</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 171: statement executed 2 times.">&nbsp;2</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 171: statement executed 2 times.">                onNamedSchemaComplexType((Element) iter.next());</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;172</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;173</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;174</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 174: statement executed 25 times.">&nbsp;25</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 174: statement executed 25 times.">            namedTypeResolver.resolveNamedTypes();</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;175</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;176</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;177</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;178</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">// Implementation methods</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;179</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">// -------------------------------------------------------------------------</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;180</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;181</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/**</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;182</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * processes an XML Schema &amp;lt;element&amp;gt; tag</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;183</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;184</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> xsdElement</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;185</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;186</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> parentFactory</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;187</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;188</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     */</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;189</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 189: method entered 406 times.">&nbsp;406</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 189: method entered 406 times.">    <span class="keyword">private</span> <span class="keyword">void</span> onDatatypeElement(Element xsdElement,</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;190</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            DocumentFactory parentFactory) {</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;191</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 191: statement executed 406 times.">&nbsp;406</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 191: statement executed 406 times.">        String name = xsdElement.attributeValue(<span class="string">"name"</span>);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;192</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 192: statement executed 406 times.">&nbsp;406</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 192: statement executed 406 times.">        String type = xsdElement.attributeValue(<span class="string">"type"</span>);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;193</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 193: statement executed 406 times.">&nbsp;406</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 193: statement executed 406 times.">        QName qname = getQName(name);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;194</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;195</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 195: statement executed 406 times.">&nbsp;406</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 195: statement executed 406 times.">        DatatypeElementFactory factory = getDatatypeElementFactory(qname);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;196</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;197</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 197: statement executed 406 times.">&nbsp;406</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 197: statement executed 406 times.">        <span class="keyword">if</span> (type != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;198</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            <span class="comment">// register type with this element name</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;199</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 199: statement executed 146 times.">&nbsp;146</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 199: statement executed 146 times.">            XSDatatype dataType = getTypeByName(type);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;200</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;201</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 201: statement executed 146 times.">&nbsp;146</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 201: statement executed 146 times.">            <span class="keyword">if</span> (dataType != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;202</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 202: statement executed 143 times.">&nbsp;143</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 202: statement executed 143 times.">                factory.setChildElementXSDatatype(qname, dataType);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;203</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            } <span class="keyword">else</span> {</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;204</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 204: statement executed 3 times.">&nbsp;3</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 204: statement executed 3 times.">                QName typeQName = getQName(type);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;205</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 205: statement executed 3 times.">&nbsp;3</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 205: statement executed 3 times.">                namedTypeResolver.registerTypedElement(xsdElement, typeQName,</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;206</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                        parentFactory);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;207</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;208</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;209</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 209: statement executed 146 times.">&nbsp;146</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 209: statement executed 146 times.">            <span class="keyword">return</span>;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;210</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;211</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;212</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        <span class="comment">// handle element types derrived from simpleTypes</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;213</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 213: statement executed 260 times.">&nbsp;260</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 213: statement executed 260 times.">        Element xsdSimpleType = xsdElement.element(XSD_SIMPLETYPE);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;214</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;215</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 215: expression evaluated to true 0 times, false 260 times.">&nbsp;260</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 215: expression evaluated to true 0 times, false 260 times.">        <span class="keyword">if</span> (xsdSimpleType != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;216</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 216: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 216: statement not executed.">            XSDatatype dataType = loadXSDatatypeFromSimpleType(xsdSimpleType);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;217</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;218</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 218: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 218: statement not executed.">            <span class="keyword">if</span> (dataType != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;219</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 219: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 219: statement not executed.">                factory.setChildElementXSDatatype(qname, dataType);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;220</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;221</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;222</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;223</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 223: statement executed 260 times.">&nbsp;260</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 223: statement executed 260 times.">        Element schemaComplexType = xsdElement.element(XSD_COMPLEXTYPE);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;224</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;225</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 225: statement executed 260 times.">&nbsp;260</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 225: statement executed 260 times.">        <span class="keyword">if</span> (schemaComplexType != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;226</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 226: statement executed 107 times.">&nbsp;107</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 226: statement executed 107 times.">            onSchemaComplexType(schemaComplexType, factory);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;227</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;228</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;229</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 229: statement executed 260 times.">&nbsp;260</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 229: statement executed 260 times.">        Iterator iter = xsdElement.elementIterator(XSD_ATTRIBUTE);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;230</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;231</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 231: expression evaluated to true 0 times, false 260 times.">&nbsp;260</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 231: expression evaluated to true 0 times, false 260 times.">        <span class="keyword">if</span> (iter.hasNext()) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;232</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 232: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 232: statement not executed.">            <span class="keyword">do</span> {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;233</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 233: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 233: statement not executed.">                onDatatypeAttribute(xsdElement, factory, (Element) iter</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;234</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                        .next());</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;235</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 235: expression evaluated to true 0 times, false 0 times.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 235: expression evaluated to true 0 times, false 0 times.">            } <span class="keyword">while</span> (iter.hasNext());</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;236</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;237</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;238</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;239</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/**</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;240</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * processes an named XML Schema &amp;lt;complexTypegt; tag</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;241</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;242</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> schemaComplexType</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;243</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;244</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     */</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;245</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 245: method entered 2 times.">&nbsp;2</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 245: method entered 2 times.">    <span class="keyword">private</span> <span class="keyword">void</span> onNamedSchemaComplexType(Element schemaComplexType) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;246</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 246: statement executed 2 times.">&nbsp;2</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 246: statement executed 2 times.">        Attribute nameAttr = schemaComplexType.attribute(<span class="string">"name"</span>);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;247</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;248</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 248: expression evaluated to true 0 times, false 2 times.">&nbsp;2</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 248: expression evaluated to true 0 times, false 2 times.">        <span class="keyword">if</span> (nameAttr == <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;249</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 249: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 249: statement not executed.">            <span class="keyword">return</span>;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;250</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;251</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;252</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 252: statement executed 2 times.">&nbsp;2</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 252: statement executed 2 times.">        String name = nameAttr.getText();</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;253</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 253: statement executed 2 times.">&nbsp;2</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 253: statement executed 2 times.">        QName qname = getQName(name);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;254</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;255</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 255: statement executed 2 times.">&nbsp;2</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 255: statement executed 2 times.">        DatatypeElementFactory factory = getDatatypeElementFactory(qname);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;256</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;257</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 257: statement executed 2 times.">&nbsp;2</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 257: statement executed 2 times.">        onSchemaComplexType(schemaComplexType, factory);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;258</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 258: statement executed 2 times.">&nbsp;2</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 258: statement executed 2 times.">        namedTypeResolver.registerComplexType(qname, factory);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;259</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;260</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;261</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/**</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;262</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * processes an XML Schema &amp;lt;complexTypegt; tag</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;263</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;264</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> schemaComplexType</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;265</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;266</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> elementFactory</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;267</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;268</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     */</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;269</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 269: method entered 109 times.">&nbsp;109</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 269: method entered 109 times.">    <span class="keyword">private</span> <span class="keyword">void</span> onSchemaComplexType(Element schemaComplexType,</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;270</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            DatatypeElementFactory elementFactory) {</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;271</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 271: statement executed 109 times.">&nbsp;109</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 271: statement executed 109 times.">        Iterator iter = schemaComplexType.elementIterator(XSD_ATTRIBUTE);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;272</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;273</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 273: statement executed 109 times.">&nbsp;109</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 273: statement executed 109 times.">        <span class="keyword">while</span> (iter.hasNext()) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;274</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 274: statement executed 265 times.">&nbsp;265</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 274: statement executed 265 times.">            Element xsdAttribute = (Element) iter.next();</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;275</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 275: statement executed 265 times.">&nbsp;265</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 275: statement executed 265 times.">            String name = xsdAttribute.attributeValue(<span class="string">"name"</span>);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;276</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 276: statement executed 265 times.">&nbsp;265</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 276: statement executed 265 times.">            QName qname = getQName(name);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;277</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;278</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 278: statement executed 265 times.">&nbsp;265</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 278: statement executed 265 times.">            XSDatatype dataType = dataTypeForXsdAttribute(xsdAttribute);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;279</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;280</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 280: expression evaluated to true 265 times, false 0 times.">&nbsp;265</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 280: expression evaluated to true 265 times, false 0 times.">            <span class="keyword">if</span> (dataType != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;281</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                <span class="comment">// register the XSDatatype for the given Attribute</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;282</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                <span class="comment">// #### should both these be done?</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;283</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                <span class="comment">// elementFactory.setChildElementXSDatatype( qname, dataType );</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;284</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 284: statement executed 265 times.">&nbsp;265</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 284: statement executed 265 times.">                elementFactory.setAttributeXSDatatype(qname, dataType);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;285</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;286</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;287</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;288</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        <span class="comment">// handle sequence definition</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;289</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 289: statement executed 109 times.">&nbsp;109</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 289: statement executed 109 times.">        Element schemaSequence = schemaComplexType.element(XSD_SEQUENCE);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;290</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;291</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 291: statement executed 109 times.">&nbsp;109</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 291: statement executed 109 times.">        <span class="keyword">if</span> (schemaSequence != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;292</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 292: statement executed 49 times.">&nbsp;49</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 292: statement executed 49 times.">            onChildElements(schemaSequence, elementFactory);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;293</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;294</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;295</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        <span class="comment">// handle choice definition</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;296</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 296: statement executed 109 times.">&nbsp;109</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 296: statement executed 109 times.">        Element schemaChoice = schemaComplexType.element(XSD_CHOICE);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;297</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;298</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 298: expression evaluated to true 0 times, false 109 times.">&nbsp;109</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 298: expression evaluated to true 0 times, false 109 times.">        <span class="keyword">if</span> (schemaChoice != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;299</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 299: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 299: statement not executed.">            onChildElements(schemaChoice, elementFactory);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;300</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;301</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;302</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        <span class="comment">// handle all definition</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;303</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 303: statement executed 109 times.">&nbsp;109</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 303: statement executed 109 times.">        Element schemaAll = schemaComplexType.element(XSD_ALL);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;304</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;305</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 305: statement executed 109 times.">&nbsp;109</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 305: statement executed 109 times.">        <span class="keyword">if</span> (schemaAll != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;306</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 306: statement executed 19 times.">&nbsp;19</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 306: statement executed 19 times.">            onChildElements(schemaAll, elementFactory);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;307</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;308</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;309</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;310</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 310: method entered 68 times.">&nbsp;68</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 310: method entered 68 times.">    <span class="keyword">private</span> <span class="keyword">void</span> onChildElements(Element element, DatatypeElementFactory fact) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;311</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 311: statement executed 68 times.">&nbsp;68</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 311: statement executed 68 times.">        Iterator iter = element.elementIterator(XSD_ELEMENT);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;312</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;313</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 313: statement executed 68 times.">&nbsp;68</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 313: statement executed 68 times.">        <span class="keyword">while</span> (iter.hasNext()) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;314</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 314: statement executed 226 times.">&nbsp;226</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 314: statement executed 226 times.">            Element xsdElement = (Element) iter.next();</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;315</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 315: statement executed 226 times.">&nbsp;226</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 315: statement executed 226 times.">            onDatatypeElement(xsdElement, fact);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;316</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;317</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;318</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;319</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/**</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;320</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * processes an XML Schema &amp;lt;attribute&amp;gt; tag</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;321</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;322</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> xsdElement</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;323</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;324</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> elementFactory</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;325</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;326</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> xsdAttribute</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;327</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;328</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     */</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;329</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 329: method not entered.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 329: method not entered.">    <span class="keyword">private</span> <span class="keyword">void</span> onDatatypeAttribute(Element xsdElement,</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;330</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            DatatypeElementFactory elementFactory, Element xsdAttribute) {</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;331</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 331: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 331: statement not executed.">        String name = xsdAttribute.attributeValue(<span class="string">"name"</span>);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;332</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 332: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 332: statement not executed.">        QName qname = getQName(name);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;333</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 333: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 333: statement not executed.">        XSDatatype dataType = dataTypeForXsdAttribute(xsdAttribute);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;334</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;335</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 335: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 335: statement not executed.">        <span class="keyword">if</span> (dataType != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;336</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            <span class="comment">// register the XSDatatype for the given Attribute</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;337</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 337: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 337: statement not executed.">            elementFactory.setAttributeXSDatatype(qname, dataType);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;338</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        } <span class="keyword">else</span> {</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;339</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 339: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 339: statement not executed.">            String type = xsdAttribute.attributeValue(<span class="string">"type"</span>);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;340</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 340: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 340: statement not executed.">            System.out.println(<span class="string">"Warning: Couldn't find XSDatatype for type: "</span></A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;341</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                    + type + <span class="string">" attribute: "</span> + name);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;342</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;343</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;344</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;345</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/**</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;346</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * processes an XML Schema &amp;lt;attribute&amp;gt; tag</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;347</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;348</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> xsdAttribute</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;349</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;350</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;351</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@return</span> DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;352</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;353</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@throws</span> InvalidSchemaException</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;354</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *             DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;355</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     */</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;356</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 356: method entered 265 times.">&nbsp;265</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 356: method entered 265 times.">    <span class="keyword">private</span> XSDatatype dataTypeForXsdAttribute(Element xsdAttribute) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;357</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 357: statement executed 265 times.">&nbsp;265</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 357: statement executed 265 times.">        String type = xsdAttribute.attributeValue(<span class="string">"type"</span>);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;358</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 358: statement executed 265 times.">&nbsp;265</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 358: statement executed 265 times.">        XSDatatype dataType = <span class="keyword">null</span>;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;359</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;360</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 360: statement executed 265 times.">&nbsp;265</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 360: statement executed 265 times.">        <span class="keyword">if</span> (type != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;361</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 361: statement executed 209 times.">&nbsp;209</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 361: statement executed 209 times.">            dataType = getTypeByName(type);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;362</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        } <span class="keyword">else</span> {</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;363</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            <span class="comment">// must parse the &lt;simpleType&gt; element</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;364</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 364: statement executed 56 times.">&nbsp;56</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 364: statement executed 56 times.">            Element xsdSimpleType = xsdAttribute.element(XSD_SIMPLETYPE);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;365</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;366</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 366: expression evaluated to true 0 times, false 56 times.">&nbsp;56</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 366: expression evaluated to true 0 times, false 56 times.">            <span class="keyword">if</span> (xsdSimpleType == <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;367</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 367: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 367: statement not executed.">                String name = xsdAttribute.attributeValue(<span class="string">"name"</span>);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;368</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 368: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 368: statement not executed.">                String msg = <span class="string">"The attribute: "</span> + name</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;369</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                        + <span class="string">" has no type attribute and does not contain a "</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;370</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                        + <span class="string">"&lt;simpleType/&gt; element"</span>;</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;371</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 371: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 371: statement not executed.">                <span class="keyword">throw</span> <span class="keyword">new</span> InvalidSchemaException(msg);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;372</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;373</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;374</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 374: statement executed 56 times.">&nbsp;56</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 374: statement executed 56 times.">            dataType = loadXSDatatypeFromSimpleType(xsdSimpleType);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;375</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;376</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;377</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 377: statement executed 265 times.">&nbsp;265</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 377: statement executed 265 times.">        <span class="keyword">return</span> dataType;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;378</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;379</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;380</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/**</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;381</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * processes an named XML Schema &amp;lt;simpleTypegt; tag</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;382</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;383</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> schemaSimpleType</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;384</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;385</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     */</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;386</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 386: method entered 1 time.">&nbsp;1</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 386: method entered 1 time.">    <span class="keyword">private</span> <span class="keyword">void</span> onNamedSchemaSimpleType(Element schemaSimpleType) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;387</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 387: statement executed 1 time.">&nbsp;1</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 387: statement executed 1 time.">        Attribute nameAttr = schemaSimpleType.attribute(<span class="string">"name"</span>);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;388</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;389</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 389: expression evaluated to true 0 times, false 1 time.">&nbsp;1</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 389: expression evaluated to true 0 times, false 1 time.">        <span class="keyword">if</span> (nameAttr == <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;390</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 390: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 390: statement not executed.">            <span class="keyword">return</span>;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;391</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;392</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;393</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 393: statement executed 1 time.">&nbsp;1</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 393: statement executed 1 time.">        String name = nameAttr.getText();</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;394</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 394: statement executed 1 time.">&nbsp;1</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 394: statement executed 1 time.">        QName qname = getQName(name);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;395</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 395: statement executed 1 time.">&nbsp;1</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 395: statement executed 1 time.">        XSDatatype datatype = loadXSDatatypeFromSimpleType(schemaSimpleType);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;396</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 396: statement executed 1 time.">&nbsp;1</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 396: statement executed 1 time.">        namedTypeResolver.registerSimpleType(qname, datatype);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;397</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;398</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;399</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/**</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;400</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * Loads a XSDatatype object from a &amp;lt;simpleType&amp;gt; attribute schema</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;401</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * element</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;402</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;403</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> xsdSimpleType</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;404</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;405</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;406</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@return</span> DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;407</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     */</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;408</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 408: method entered 57 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 408: method entered 57 times.">    <span class="keyword">private</span> XSDatatype loadXSDatatypeFromSimpleType(Element xsdSimpleType) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;409</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 409: statement executed 57 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 409: statement executed 57 times.">        Element xsdRestriction = xsdSimpleType.element(XSD_RESTRICTION);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;410</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;411</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 411: expression evaluated to true 57 times, false 0 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 411: expression evaluated to true 57 times, false 0 times.">        <span class="keyword">if</span> (xsdRestriction != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;412</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 412: statement executed 57 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 412: statement executed 57 times.">            String base = xsdRestriction.attributeValue(<span class="string">"base"</span>);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;413</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;414</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 414: expression evaluated to true 57 times, false 0 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 414: expression evaluated to true 57 times, false 0 times.">            <span class="keyword">if</span> (base != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;415</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 415: statement executed 57 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 415: statement executed 57 times.">                XSDatatype baseType = getTypeByName(base);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;416</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;417</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 417: expression evaluated to true 0 times, false 57 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 417: expression evaluated to true 0 times, false 57 times.">                <span class="keyword">if</span> (baseType == <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;418</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 418: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 418: statement not executed.">                    onSchemaError(<span class="string">"Invalid base type: "</span> + base</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;419</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                            + <span class="string">" when trying to build restriction: "</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;420</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                            + xsdRestriction);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;421</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                } <span class="keyword">else</span> {</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;422</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 422: statement executed 57 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 422: statement executed 57 times.">                    <span class="keyword">return</span> deriveSimpleType(baseType, xsdRestriction);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;423</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;424</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            } <span class="keyword">else</span> {</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;425</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                <span class="comment">// simpleType and base are mutually exclusive and you</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;426</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                <span class="comment">// must have one within a &lt;restriction&gt; tag</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;427</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 427: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 427: statement not executed.">                Element xsdSubType = xsdSimpleType.element(XSD_SIMPLETYPE);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;428</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;429</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 429: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 429: statement not executed.">                <span class="keyword">if</span> (xsdSubType == <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;430</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 430: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 430: statement not executed.">                    String msg = <span class="string">"The simpleType element: "</span> + xsdSimpleType</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;431</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                            + <span class="string">" must contain a base attribute or simpleType"</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;432</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                            + <span class="string">" element"</span>;</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;433</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 433: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 433: statement not executed.">                    onSchemaError(msg);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;434</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                } <span class="keyword">else</span> {</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;435</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 435: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 435: statement not executed.">                    <span class="keyword">return</span> loadXSDatatypeFromSimpleType(xsdSubType);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;436</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;437</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;438</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        } <span class="keyword">else</span> {</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;439</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 439: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 439: statement not executed.">            onSchemaError(<span class="string">"No &lt;restriction&gt;. Could not create XSDatatype for"</span></A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;440</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                    + <span class="string">" simpleType: "</span> + xsdSimpleType);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;441</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;442</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;443</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 443: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 443: statement not executed.">        <span class="keyword">return</span> <span class="keyword">null</span>;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;444</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;445</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;446</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/**</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;447</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * Derives a new type from a base type and a set of restrictions</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;448</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;449</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> baseType</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;450</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;451</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> xsdRestriction</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;452</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;453</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;454</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@return</span> DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;455</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     */</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;456</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 456: method entered 57 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 456: method entered 57 times.">    <span class="keyword">private</span> XSDatatype deriveSimpleType(XSDatatype baseType,</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;457</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            Element xsdRestriction) {</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;458</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 458: statement executed 57 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 458: statement executed 57 times.">        TypeIncubator incubator = <span class="keyword">new</span> TypeIncubator(baseType);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;459</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 459: statement executed 57 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 459: statement executed 57 times.">        ValidationContext context = <span class="keyword">null</span>;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;460</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;461</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 461: statement executed 57 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 461: statement executed 57 times.">        <span class="keyword">try</span> {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;462</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 462: statement executed 57 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 462: statement executed 57 times.">            <span class="keyword">for</span> (Iterator iter = xsdRestriction.elementIterator(); iter</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;463</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                    .hasNext();) {</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;464</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 464: statement executed 103 times.">&nbsp;103</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 464: statement executed 103 times.">                Element element = (Element) iter.next();</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;465</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 465: statement executed 103 times.">&nbsp;103</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 465: statement executed 103 times.">                String name = element.getName();</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;466</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 466: statement executed 103 times.">&nbsp;103</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 466: statement executed 103 times.">                String value = element.attributeValue(<span class="string">"value"</span>);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;467</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 467: statement executed 103 times.">&nbsp;103</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 467: statement executed 103 times.">                <span class="keyword">boolean</span> fixed = AttributeHelper.booleanValue(element, <span class="string">"fixed"</span>);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;468</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;469</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                <span class="comment">// add facet</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;470</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 470: statement executed 103 times.">&nbsp;103</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 470: statement executed 103 times.">                incubator.addFacet(name, value, fixed, context);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;471</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;472</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;473</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            <span class="comment">// derive a new type by those facets</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;474</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 474: statement executed 57 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 474: statement executed 57 times.">            String newTypeName = <span class="keyword">null</span>;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;475</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;476</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 476: statement executed 57 times.">&nbsp;57</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 476: statement executed 57 times.">            <span class="keyword">return</span> incubator.derive(<span class="string">""</span>, newTypeName);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;477</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        } <span class="keyword">catch</span> (DatatypeException e) {</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;478</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 478: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 478: statement not executed.">            onSchemaError(<span class="string">"Invalid restriction: "</span> + e.getMessage()</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;479</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                    + <span class="string">" when trying to build restriction: "</span> + xsdRestriction);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;480</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;481</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 481: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 481: statement not executed.">            <span class="keyword">return</span> <span class="keyword">null</span>;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;482</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;483</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;484</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;485</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/**</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;486</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;487</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;488</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> name</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;489</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            The name of the element</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;490</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;491</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@return</span> the &lt;code&gt;DatatypeElementFactory&lt;/code&gt; for the given element</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;492</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *         QName, creating one if it does not already exist</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;493</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     */</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;494</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 494: method entered 408 times.">&nbsp;408</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 494: method entered 408 times.">    <span class="keyword">private</span> DatatypeElementFactory getDatatypeElementFactory(QName name) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;495</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 495: statement executed 408 times.">&nbsp;408</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 495: statement executed 408 times.">        DatatypeElementFactory factory = documentFactory</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;496</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                .getElementFactory(name);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;497</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;498</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 498: statement executed 408 times.">&nbsp;408</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 498: statement executed 408 times.">        <span class="keyword">if</span> (factory == <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;499</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 499: statement executed 403 times.">&nbsp;403</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 499: statement executed 403 times.">            factory = <span class="keyword">new</span> DatatypeElementFactory(name);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;500</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 500: statement executed 403 times.">&nbsp;403</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 500: statement executed 403 times.">            name.setDocumentFactory(factory);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;501</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;502</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;503</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 503: statement executed 408 times.">&nbsp;408</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 503: statement executed 408 times.">        <span class="keyword">return</span> factory;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;504</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;505</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;506</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 506: method entered 412 times.">&nbsp;412</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 506: method entered 412 times.">    <span class="keyword">private</span> XSDatatype getTypeByName(String type) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;507</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 507: statement executed 412 times.">&nbsp;412</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 507: statement executed 412 times.">        XSDatatype dataType = (XSDatatype) dataTypeCache.get(type);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;508</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;509</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 509: statement executed 412 times.">&nbsp;412</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 509: statement executed 412 times.">        <span class="keyword">if</span> (dataType == <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;510</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            <span class="comment">// first check to see if it is a built-in type</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;511</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            <span class="comment">// maybe a prefix is being used</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;512</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 512: statement executed 190 times.">&nbsp;190</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 512: statement executed 190 times.">            <span class="keyword">int</span> idx = type.indexOf(':');</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;513</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;514</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 514: statement executed 190 times.">&nbsp;190</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 514: statement executed 190 times.">            <span class="keyword">if</span> (idx &gt;= 0) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;515</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 515: statement executed 50 times.">&nbsp;50</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 515: statement executed 50 times.">                String localName = type.substring(idx + 1);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;516</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;517</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 517: statement executed 50 times.">&nbsp;50</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 517: statement executed 50 times.">                <span class="keyword">try</span> {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;518</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 518: statement executed 50 times.">&nbsp;50</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 518: statement executed 50 times.">                    dataType = DatatypeFactory.getTypeByName(localName);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;519</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                } <span class="keyword">catch</span> (DatatypeException e) {</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;520</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;521</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;522</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;523</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 523: statement executed 190 times.">&nbsp;190</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 523: statement executed 190 times.">            <span class="keyword">if</span> (dataType == <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;524</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 524: statement executed 140 times.">&nbsp;140</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 524: statement executed 140 times.">                <span class="keyword">try</span> {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;525</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 525: statement executed 140 times.">&nbsp;140</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 525: statement executed 140 times.">                    dataType = DatatypeFactory.getTypeByName(type);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;526</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                } <span class="keyword">catch</span> (DatatypeException e) {</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;527</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;528</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;529</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;530</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 530: statement executed 190 times.">&nbsp;190</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 530: statement executed 190 times.">            <span class="keyword">if</span> (dataType == <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;531</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                <span class="comment">// it's no built-in type, maybe it's a type we defined ourself</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;532</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 532: statement executed 3 times.">&nbsp;3</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 532: statement executed 3 times.">                QName typeQName = getQName(type);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;533</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 533: statement executed 3 times.">&nbsp;3</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 533: statement executed 3 times.">                dataType = (XSDatatype) namedTypeResolver.simpleTypeMap</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;534</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                        .get(typeQName);</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;535</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;536</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;537</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 537: statement executed 190 times.">&nbsp;190</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 537: statement executed 190 times.">            <span class="keyword">if</span> (dataType != <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;538</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">                <span class="comment">// store in cache for later</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;539</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 539: statement executed 187 times.">&nbsp;187</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 539: statement executed 187 times.">                dataTypeCache.put(type, dataType);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;540</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">            }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;541</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;542</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;543</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 543: statement executed 412 times.">&nbsp;412</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 543: statement executed 412 times.">        <span class="keyword">return</span> dataType;</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;544</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;545</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;546</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 546: method entered 680 times.">&nbsp;680</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 546: method entered 680 times.">    <span class="keyword">private</span> QName getQName(String name) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;547</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 547: statement executed 680 times.">&nbsp;680</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 547: statement executed 680 times.">        <span class="keyword">if</span> (targetNamespace == <span class="keyword">null</span>) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;548</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 548: statement executed 596 times.">&nbsp;596</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 548: statement executed 596 times.">            <span class="keyword">return</span> documentFactory.createQName(name);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;549</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        } <span class="keyword">else</span> {</SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;550</TD>
<TD align="right" class="lineCountHilight">
<A title="Line 550: statement executed 84 times.">&nbsp;84</A>
</TD><TD class="srcCell"><SPAN class="srcLine"><A title="Line 550: statement executed 84 times.">            <span class="keyword">return</span> documentFactory.createQName(name, targetNamespace);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;551</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;552</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;553</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;554</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    <span class="comment">/**</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;555</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * Called when there is a problem with the schema and the builder cannot</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;556</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * handle the XML Schema Data Types correctly</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;557</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;558</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@param</span> message</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;559</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *            DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;560</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;561</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     * <span class="javadoc">@throws</span> InvalidSchemaException</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;562</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     *             DOCUMENT ME!</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;563</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">     */</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;564</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 564: method not entered.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 564: method not entered.">    <span class="keyword">private</span> <span class="keyword">void</span> onSchemaError(String message) {</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;565</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        <span class="comment">// Some users may wish to disable exception throwing</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;566</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        <span class="comment">// and instead use some kind of listener for errors and continue</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;567</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">        <span class="comment">// System.out.println( "WARNING: " + message );</span></SPAN></TD></TR><TR><TD align="right" class="lineCountHilight">
&nbsp;568</TD>
<TD align="right" class="coverageCountHilight">
<A title="Line 568: statement not executed.">&nbsp;0</A>
</TD><TD class="srcCell"><SPAN class="srcLineHilight"><A title="Line 568: statement not executed.">        <span class="keyword">throw</span> <span class="keyword">new</span> InvalidSchemaException(message);</A>
</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;569</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">    }</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;570</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine">}</SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;571</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;572</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment">/*</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;573</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * Redistribution and use of this software and associated documentation</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;574</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * ("Software"), with or without modification, are permitted provided that the</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;575</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * following conditions are met:</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;576</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;577</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * 1. Redistributions of source code must retain copyright statements and</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;578</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * notices. Redistributions must also contain a copy of this document.</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;579</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;580</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * 2. Redistributions in binary form must reproduce the above copyright notice,</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;581</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * this list of conditions and the following disclaimer in the documentation</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;582</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * and/or other materials provided with the distribution.</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;583</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;584</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * 3. The name "DOM4J" must not be used to endorse or promote products derived</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;585</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * from this Software without prior written permission of MetaStuff, Ltd. For</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;586</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * written permission, please contact dom4j-info@metastuff.com.</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;587</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;588</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * 4. Products derived from this Software may not be called "DOM4J" nor may</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;589</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * "DOM4J" appear in their names without prior written permission of MetaStuff,</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;590</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * Ltd. DOM4J is a registered trademark of MetaStuff, Ltd.</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;591</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;592</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * 5. Due credit should be given to the DOM4J Project - http://www.dom4j.org</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;593</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;594</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * THIS SOFTWARE IS PROVIDED BY METASTUFF, LTD. AND CONTRIBUTORS ``AS IS'' AND</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;595</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;596</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;597</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * ARE DISCLAIMED. IN NO EVENT SHALL METASTUFF, LTD. OR ITS CONTRIBUTORS BE</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;598</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;599</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;600</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;601</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;602</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;603</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;604</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * POSSIBILITY OF SUCH DAMAGE.</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;605</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * </span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;606</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> * Copyright 2001-2005 (C) MetaStuff, Ltd. All Rights Reserved.</span></SPAN></TD></TR><TR><TD align="right" class="lineCount">
&nbsp;607</TD>
<TD align="right" class="coverageCount">
&nbsp;&nbsp;
</TD><TD class="srcCell"><SPAN class="srcLine"><span class="comment"> */</span></SPAN></TD></TR></TBODY></TABLE>
<TABLE width="100%"><TR><TD class="hbreak" colspan="6">&nbsp;</TD></TR>
<TR><TD class="footer" colspan="6">
<table>
<tr>
 <td><a target="_new" href="http://www.cenqua.com/clover"><img alt="Clover" src="../../../img/logo.gif" border="0"></a></td><td nowrap><i>Report generated by </i><a target="_new" href="http://www.cenqua.com/clover">Clover Code Coverage v1.3.5</a><i><BR>ma mei 16 2005 14:23:02 GMT+01:00</i>.</td>
<td>&nbsp;</td><td style="BORDER-LEFT: #9c9c9c 1px solid;">&nbsp;</td><td>Open Source License registered to the dom4j Project. This license of Clover is provided to support the development of dom4j only. </td>
</tr>
</table>
</td>
</tr></TABLE>
